defaults: &defaults
  TIMEZONE: 'Paris'

  # Configure Redis URL, for a TCP connection:
  # `redis://:[password]@[hostname]:[port]/[db]`
  # (password, port and database are optional).
  REDIS_URL:      redis://localhost:6379

  # Application URL configuration variables.
  URL_HOST:                peatio.tech
  URL_ROOT_PATH:           '/'
  URL_SCHEME:              http
  FORCE_SECURE_CONNECTION: 'false' # Set to "true" to disable access via unsecured HTTP, send HSTS headers and use secure cookies.

  # Configuration variables for logger.
  LOG_LEVEL: ~ # Default level for production is warn, otherwise – debug.

  # Configuration variables for Sentry.
  SENTRY_DSN_BACKEND:  ~          # Specify Sentry DSN used for Rails application.
  SENTRY_DSN_FRONTEND: ~          # Specify Sentry DSN used for JavaScript application.

  # Customize page metadata like title, description & keywords for landing, cabinet & admin modules.
  METADATA_TITLE:       Peatio Exchange
  METADATA_DESCRIPTION: The Opensource Cryptocurrency Exchange
  METADATA_KEYWORDS:    Peatio,Opensource,Exchange,Cryptocurrency

  # Customize bank details which is shown at fiat deposit page. You are free to supply HTML here.
  BANK_DETAILS_HTML: |
    <div><strong>Use this bank to make a deposit:</strong></div>
    <div>Bank: National Bank of World</div>
    <div>Account: 1234567890</div>

  # Set to "true" to disable markets UI (admins still have access).
  DISABLE_MARKETS_UI: ~

  # Set to "true" to disable cabinet UI (admins still have access).
  DISABLE_CABINET_UI: ~

  # Configuration variables for JWT verification.
  # Get explanation at https://en.wikipedia.org/wiki/JSON_Web_Token.
  #
  # JWT_PUBLIC_KEY
  #
  # JWT provider uses private key for encoding JSON Web Tokens
  # while public key is used for decoding by resources.
  #
  # For example, Barong is JWT provider, Peatio is resource accepting JWT.
  # Barong must have private key installed, Peatio must have public key installed.
  #
  # You can generate keypair by running:
  #
  #   ruby -e "require 'openssl'; require 'base64'; OpenSSL::PKey::RSA.generate(2048).tap { |p| puts '', 'PRIVATE RSA KEY (URL-safe Base64 encoded, PEM):', '', Base64.urlsafe_encode64(p.to_pem), '', 'PUBLIC RSA KEY (URL-safe Base64 encoded, PEM):', '', Base64.urlsafe_encode64(p.public_key.to_pem) }"
  #
  # Copy the generated private key and put it's value to appropriate variable at JWT provider (for example, at Barong it will be JWT_SHARED_SECRET_KEY).
  # Copy the generated public key and put it's value to variable JWT_PUBLIC_KEY (at Peatio).
  #
  # Peatio and JWT provider should have the same keypair installed, or they would not understand each other.
  #
  # You may want to adjust key length or cipher.
  #
  # Development and test environments already don't include sample keys.
  #
  # You can generate valid JWT by running:
  #
  #   JWT.encode(payload, OpenSSL::PKey.read(Base64.urlsafe_decode64(ENCODED_PRIVATE_KEY)), ENV.fetch('JWT_ALGORITHM'))
  #
  # Replace ENCODED_PRIVATE_KEY with private key printed by previous command.
  #
  # You can decode JWT by running:
  #
  #   JWT.decode(token, OpenSSL::PKey.read(Base64.urlsafe_decode64(ENCODED_PUBLIC_KEY)), true, algorithms: [ENV.fetch('JWT_ALGORITHM')])
  #
  # To authenticate using JWT send it's value in "Authorization" header:
  #
  #   curl -H "Authorization: Bearer TOKEN" http://localhost:3000/api/v2/members/me
  #
  JWT_PUBLIC_KEY:        ~
  JWT_ALGORITHM:         RS256  # JWT signing algorithm (mandatory).
  JWT_ISSUER:            ~      # JWT issuer name (optional).
  JWT_AUDIENCE:          peatio # Could be comma-separated value (optional).
  JWT_DEFAULT_LEEWAY:    ~      # Seconds (optional).
  JWT_ISSUED_AT_LEEWAY:  '180'    # Seconds (optional).
  JWT_EXPIRATION_LEEWAY: ~      # Seconds (optional).
  JWT_NOT_BEFORE_LEEWAY: ~      # Seconds (optional).

  # Scout APM configuration variables.
  SCOUT_KEY:       ~          # Your organization key for Scout APM. Found on the settings screen.
  SCOUT_APP_NAME:  ~          # Application name in APM Web UI.
  SCOUT_LOG_LEVEL: warn       # Verboseness of logs (debug, info, warn, error)
  SCOUT_ENV:       production # List of Rails environments for which Scout should be enabled.

  # Specify the code of currency which is used to display the equivalent of the amounts of other currencies.
  # The specified currency should exist in database.
  DISPLAY_CURRENCY: usd

  # Configuration variables for dynamic Barong levels (1.8+).
  MINIMUM_MEMBER_LEVEL_FOR_DEPOSIT:  '3'
  MINIMUM_MEMBER_LEVEL_FOR_WITHDRAW: '3'
  MINIMUM_MEMBER_LEVEL_FOR_TRADING:  '3'

  # Event API configuration.

  # JWT configuration.
  # You can generate keypair using:
  #
  #   ruby -e "require 'openssl'; require 'base64'; OpenSSL::PKey::RSA.generate(2048).tap { |p| puts '', 'PRIVATE RSA KEY (URL-safe Base64 encoded, PEM):', '', Base64.urlsafe_encode64(p.to_pem), '', 'PUBLIC RSA KEY (URL-safe Base64 encoded, PEM):', '', Base64.urlsafe_encode64(p.public_key.to_pem) }"
  #
  EVENT_API_JWT_PRIVATE_KEY: ~ # Private key. Must be URL-safe Base64 encoded in PEM format.
  EVENT_API_JWT_ALGORITHM:   RS256

  # RabbitMQ configuration.
  # You can use just «EVENT_API_RABBITMQ_URL» or specify configuration per separate variable.
  EVENT_API_RABBITMQ_URL:      ~
  EVENT_API_RABBITMQ_HOST:     localhost
  EVENT_API_RABBITMQ_PORT:     "5672"
  EVENT_API_RABBITMQ_USERNAME: guest
  EVENT_API_RABBITMQ_PASSWORD: guest

  RANGER_HOST: '0.0.0.0'
  RANGER_PORT: '8081'
  RANGER_CONNECT_SECURE: false

  BULLET: 'false'

development:
  <<: *defaults

  # Development configuration variables for Event API JWT.
  EVENT_API_JWT_PRIVATE_KEY:  LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQpNSUlFb3dJQkFBS0NBUUVBb3VLVHh2SFVJVDJENmdXaWJRcS9kbW9BUUwyeWJ6SGFiUXRlc1AyL2o1VjkvUExaCmhHNWtLVkpPWjcxVVdMQ3BjZTQxeHZzQ0lKd0Q5MnVDNW5Lak5wblRDTWpwTUJNMGg0aFF4a2VOeHdNeU41N1gKM1QzbWFCVmZzUTNCblErSm84L0tzdUxhODlvY0dDeDgvYlUyOGNld2FxRk8ydUVMWWJiaUZadGFCenFJd0ZCdQpTM3hGQmt6NE16MGgvWEIxTjl5ZDg5d25OMm1oWVBsU0xrTGVUdFoyeWswK2krZHhZd2V4MEozOXJDS0hnRWRKCko1NTZHNmdtZWpJZ3dtcHNVeHJpdkVJRU5jR09POHdmQVBUVy92SFZmc2ROTExHejRtZE9CWmxsa2orcFFQODYKTnFSUjRKSnFDdEg3dHYyaXVBSGI4NnB5anVlZkVGU3ljMmxZRXdJREFRQUJBb0lCQUJrUlViamVZczB5MEdobApzWmVpZmREVmczQnpRVkRIbFZ3TzBlWGZSMm5ya2RZcDhidmwyVmhhcUdKaXl1WlRXZUNFenBYdTcyYmhXK0xxCkV0MHdhMW50MW9LVm1QMmpGd1I4d0NHanhYZ0pUK01yZVFFOWs0WVZOQUxsb1JSdzNiZnVOTDNQRis5TGMrTnMKaFZmdVdhUmdIUkJyL3R6RW9hSEtLWVUxd1djM0poSitNRklNVkZBT0RvaGp6bXNlV2lzTDNnbzVrUC9KYUpVZwprNm13Wnd0QzRvQ3pPQ3FoRGF0WVI3cktJbXMyS1lCNVBwaTRDTThkRzJGTzBwWGxXUU9XT0t2N01TUjlVeEtzCmd4YWFRRlhjajBQM2lSRFVQMDRkSWtqblNtemZmR0F2L3lBTHovZjk0V1lIK3gvd01DWms4ejJ4bnRJclllM3UKN0NOd045RUNnWUVBMEplcThCaXlKczF6YlBpcTlWWnR5L3R0M1dhaXJDbUl4cXRwU2syVU9UNmh2TldiMTUxVwpBMGRWYWEvSVBhdDV4ZkNWdGhkNlB3UGpJbWVPVXQ4Mlhib2JYeE8zREJUcmVzTlRNWUhiMGVUK09sSG04SU5uCnVwOGFxZWpWejc1ME5VYUxGWWpxWk1wVVR1Z2FVREIzNWZ1bXg0SXliNm5LRGMvSStrN25qUlVDZ1lFQXgrZVAKcE4vR1dqYjJUOU1CUm1xdkVtSGxKOXBZSEZpWGZlWnJHdzg3Q2E5WjVDYVp1VzBrSVAwSlhWSDZOOThqL2RvbApDTHZPdE5oZVFoaGUrTU91VXJMT0ttaytpckM5SEk2cW9aT3Nkc0lCc0pXSHdPanB1UW00OWNvdXc0K2ZKOWRxCjN2cTE2bG5EQlNoRU5HTEFhdVBzWDhLRUlYVzhRRnBDM3ppbXFvY0NnWUI2bTh2VVdRL09reEQzeXFyaWpxejMKSzVFR2hKKzF4cXdvNnZSMndtY1B4dXJXemxCT1NxTVdSa1hFVzVpOTl4OGE1REY3MlF6NElWYlBFRU91SHBvYwpPWnFCSmx0LzlJUDlvdll4c1h6K1FUWFdIZkk3Q1dKZFpjd01kMW5HUk5LVnhpTld3eVhUbk1JMXAyUmdJajAzCnA5WCtpMThPRjZVMnZSNExVM256aVFLQmdBVVZzOGFxMW4zRzloN3pyQTJoZXhDSm91MlBsVHdyV0xjZ0hFdFUKNk5pSE9FOGdXRHFxTndnTHg2Z3pCSjFWTkxJcFVWWFdpUng2Z0hOSDhXcDhkN3VzeHFlM2c1cTlnaUh1MHhKSApFbFQyL0ZvRWc2NTVmakJ4dWQydXBkL2RrRnZRRSt6V0RiaUhUZm1jbTVlRmg0VndoTHV1MC9PUjdoYm85TmgrCnRXYVRBb0dCQUwxVjFUTWZZRFhwYjFwaFBaV2pQL29iV1NqK2VyUXlYdit3TTIxVzRYWFI4YTBkV2hOVXdVeDAKdU9WZ2s1ZlN1OExtNG0zWGNYZ09wV0VJVkZJTzFodDFNN0xxZ0VGNGhFOHl6Y0Vldy9HWXR4VkpCTWEyODVpVQpaVUtkeCt6QWd5VFlnYk50VkVseTVobGRuT2orVmNzanVEL3krWEhXWVl5OVpLa2pNdDhECi0tLS0tRU5EIFJTQSBQUklWQVRFIEtFWS0tLS0tCg==
  # Event API JWT public key value is.
  # EVENT_API_JWT_PUBLIC_KEY: LS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0tLS0KTUlJQklqQU5CZ2txaGtpRzl3MEJBUUVGQUFPQ0FROEFNSUlCQ2dLQ0FRRUFvdUtUeHZIVUlUMkQ2Z1dpYlFxLwpkbW9BUUwyeWJ6SGFiUXRlc1AyL2o1VjkvUExaaEc1a0tWSk9aNzFVV0xDcGNlNDF4dnNDSUp3RDkydUM1bktqCk5wblRDTWpwTUJNMGg0aFF4a2VOeHdNeU41N1gzVDNtYUJWZnNRM0JuUStKbzgvS3N1TGE4OW9jR0N4OC9iVTIKOGNld2FxRk8ydUVMWWJiaUZadGFCenFJd0ZCdVMzeEZCa3o0TXowaC9YQjFOOXlkODl3bk4ybWhZUGxTTGtMZQpUdFoyeWswK2krZHhZd2V4MEozOXJDS0hnRWRKSjU1Nkc2Z21laklnd21wc1V4cml2RUlFTmNHT084d2ZBUFRXCi92SFZmc2ROTExHejRtZE9CWmxsa2orcFFQODZOcVJSNEpKcUN0SDd0djJpdUFIYjg2cHlqdWVmRUZTeWMybFkKRXdJREFRQUIKLS0tLS1FTkQgUFVCTElDIEtFWS0tLS0tCg==

test:
  <<: *defaults

production:
  <<: *defaults
